import random
import sys
import time

#人生重开模拟器

#首先设置界面
print('+------------------------------------+')
print('|                                    |')
print('|                                    |')
print('|        花有重开日，人无再少年           |')
print('|                                    |')
print('|        欢迎来到人生重开模拟器           |')
print('|                                    |')
print('|                                    |')
print('+------------------------------------+')

#然后设置初始属性
#颜值，体质，智力，家境，这些属性综合不能超过20，每一项在1~10之间

#使用循环，让玩家输入错误的时候，可以重新输入
while True:
    print('请设置初始属性（可用点数总和为20）')
    face = int(input('请输入颜值(1~10):'))
    strong = int(input('请输入体质(1~10):'))
    iq = int(input('请输入智力(1~10):'))
    home = int(input('请输入家境(1~10):'))

    #下面开始对用户输入的语句进行检验
    #使用到条件语句
    if face<1 or face>10:
        print('颜值设置有误')
        continue
    if strong<1 or strong>10:
        print('体质设置有误')
        continue
    if iq < 1 or iq > 10:
        print('智力设置有误')
        continue
    if home < 1 or home > 10:
        print('家境设置有误')
        continue

    if face+strong+iq+home >20:
        print('总的属性和设置有误，超出了20')
        continue
    #如果以上的条件都没有触发，那就说明玩家输入的数据是合法的
    print('初始属性输入完毕！')
    print(f'颜值:{face},体质:{strong},智力:{iq},家境:{home}')
    break


#注意啊，编程中的合法和非法，是合理和是否有效，而不是触犯法律！！

#生成角色的性别

#使用random.randint(beg,end)代表的是随机生成从begin到end的随机数，这里是前闭后闭区间
point = random.randint(1,6)#你会发现最上面第1行自动导入了random的模块
#上面这一行是写random.然后再按table键，就出randint了
print(f'point={point}')
if(point % 2==1):
    gender='boy'
    print('你是个男孩')
else:
    gender='girl'
    print('你是个女孩')


#设定角色的出生点
#为了简单，就可以生成1~3的随机数

point = random.randint(1,3)
if home ==10:
    #第一档
    print('你出生在帝都，你的父母是高官政要')
    home+=1
    iq+=1
    face+=1
elif 7<=home<=9:
    #第二档
    if point == 1:
        print('你出生在大城市，父母是公务员')
        face+=2
    elif point == 2:
        print('你出生在大城市，父母是企业高管')
        home+=2
    else:
        print('你出生在大城市，父母是大学教授')
        iq+=2
elif 4<=home<=6:
    #第三档
    if point == 1:
        print('你出生在三线城市，父母是医生')
        strong+=1
    elif point == 2:
        print('你出生在镇上，父母是老师')
        iq+=1
    else:
        print('你出生在镇上，父母是个体户')
        home+=1
else:
    #第四档
    if point == 1:
        print('你出生在农村，父母是辛苦劳作的农民')
        strong+=1
        face-=2
    elif point == 2:
        print('你出生在穷乡僻壤，父母是物业游民')
        home-=1
    else:
        print('你出生在镇上，父母感情不和')
        strong-=1

print(f'颜值:{face},体质:{strong},智力:{iq},家庭:{home}')


#生成角色的人生经历
#幼年阶段
for age in range(1,11):
    #把一整年的打印都整理到一个字符串中，在这一年的结果统一打印
    info=f'你今年{age}岁'
    #生成一个1~3的随机数
    point = random.randint(1,3)
#接下来编写各种事件的代码
#性别触发的事件
    if gender == 'girl' and home <=3 and point ==1:
        info+='你的家里人重男轻女思想非常严重，你被遗弃了!'
        print(info)
        print('游戏结束！')
        sys.exit(0)

    #体质触发的事件
    elif strong <6 and point <3:
        info += '你生了一场病'
        if home>=5:
            info += '在父母的细心照料下，你康复了'
            strong+=1
            home-=1
        else:
            info +='你的父母没精力管你，你的身体状况更糟糕了'
            strong-=1

    #颜值触发时间
    elif face <=4 and age >=7:
        info += '你长的太丑了，别的小朋友不喜欢你'
        if iq >5:
            info += '你决定用学习填充自己'
            iq+=1
        else:
            if gender =='boy':
                info+='你和别的小朋友经常打架'
                strong += 1
                iq -=1
            else:
                info += '你经常被别的小朋友欺负'
                strong -=1

    #智商出发的事件
    elif iq <5:
        info +='你看起来傻傻的'
        if home >=8 and age >=6:
            info += '你的父母把你送到更好的学校学习'
            iq += 1
        elif 4<= home <=7:
            if gender == 'boy':
                info += '你的父母鼓励你多运动，争取成为运动员'
                strong += 1
            else:
                info += '你的父母鼓励你多打扮自己'
                face += 1
        else:
            info += '你的父母'
            if point ==1:
                strong -=1
            elif point ==2:
                iq-=1
            else:
                pass

    else:
        info += '你健康成长'
        if point ==1:
            info +='你看起来更结实了'
        elif point ==2:
            info += '你看起来更好看了'
            face +=1
        else:
            pass

    #打印这一年的事件
    print(info)
    print(f'颜值:{face},体质:{strong},智力:{iq},家境:{home},')
    print('------------------------------------------------------')

time.sleep(1)#这个time也是python提供的模块，这里代表暂停1秒






















